<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Open a connection to a database</title>
<link media="all" rel="stylesheet" type="text/css" href="styles/03e73060321a0a848018724a6c83de7f-theme-base.css" />
<link media="all" rel="stylesheet" type="text/css" href="styles/03e73060321a0a848018724a6c83de7f-theme-medium.css" />

 </head>
 <body class="docs"><div class="navbar navbar-fixed-top">
  <div class="navbar-inner clearfix">
    <ul class="nav" style="width: 100%">
      <li style="float: left;"><a href="function.ibase-commit.html">« ibase_commit</a></li>
      <li style="float: right;"><a href="function.ibase-db-info.html">ibase_db_info »</a></li>
    </ul>
  </div>
</div>
<div id="breadcrumbs" class="clearfix">
  <ul class="breadcrumbs-container">
    <li><a href="index.html">PHP Manual</a></li>
    <li><a href="ref.ibase.html">Firebird/InterBase 函数</a></li>
    <li>Open a connection to a database</li>
  </ul>
</div>
<div id="layout">
  <div id="layout-content"><div id="function.ibase-connect" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">ibase_connect</h1>
  <p class="verinfo">(PHP 5, PHP 7 &lt; 7.4.0)</p><p class="refpurpose"><span class="refname">ibase_connect</span> &mdash; <span class="dc-title">Open a connection to a database</span></p>

 </div>
 
 <div class="refsect1 description" id="refsect1-function.ibase-connect-description">
  <h3 class="title">说明</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>ibase_connect</strong></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">string</span> <code class="parameter">$database</code><span class="initializer"> = ?</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">string</span> <code class="parameter">$username</code><span class="initializer"> = ?</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">string</span> <code class="parameter">$password</code><span class="initializer"> = ?</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">string</span> <code class="parameter">$charset</code><span class="initializer"> = ?</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">int</span> <code class="parameter">$buffers</code><span class="initializer"> = ?</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">int</span> <code class="parameter">$dialect</code><span class="initializer"> = ?</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">string</span> <code class="parameter">$role</code><span class="initializer"> = ?</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type">int</span> <code class="parameter">$sync</code><span class="initializer"> = ?</span></span><br>): <span class="type">resource</span></div>

  <p class="para rdfs-comment">
   Establishes a connection to an Firebird/InterBase server.
  </p>
  <p class="para">
   In case a second call is made to <span class="function"><strong>ibase_connect()</strong></span> with
   the same arguments, no new link will be established, but instead, the link
   identifier of the already opened link will be returned. The link to the
   server will be closed as soon as the execution of the script ends, unless
   it&#039;s closed earlier by explicitly calling <span class="function"><a href="function.ibase-close.html" class="function">ibase_close()</a></span>.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.ibase-connect-parameters">
  <h3 class="title">参数</h3>
  <p class="para">
   <dl>
    
     <dt>
<code class="parameter">database</code></dt>

     <dd>

      <p class="para">
       The <code class="parameter">database</code> argument has to be a valid path to
       database file on the server it resides on. If the server is not local,
       it must be prefixed with either &#039;hostname:&#039; (TCP/IP), &#039;hostname/port:&#039;
       (TCP/IP with interbase server on custom TCP port), &#039;//hostname/&#039;
       (NetBEUI), depending on the connection
       protocol used.   
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">username</code></dt>

     <dd>

      <p class="para">
       The user name. Can be set with the
       <code class="literal">ibase.default_user</code> <var class="filename">php.ini</var> directive.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">password</code></dt>

     <dd>

      <p class="para">
       The password for <code class="parameter">username</code>. Can be set with the
       <code class="literal">ibase.default_password</code> <var class="filename">php.ini</var> directive.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">charset</code></dt>

     <dd>

      <p class="para">
       <code class="parameter">charset</code> is the default character set for a
       database.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">buffers</code></dt>

     <dd>

      <p class="para">
       <code class="parameter">buffers</code> is the number of database buffers to
       allocate for the server-side cache. If 0 or omitted, server chooses
       its own default.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">dialect</code></dt>

     <dd>

      <p class="para">
       <code class="parameter">dialect</code> selects the default SQL dialect for any
       statement executed within a connection, and it defaults to the highest
       one supported by client libraries.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">role</code></dt>

     <dd>

      <p class="para">
       Functional only with InterBase 5 and up.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">sync</code></dt>

     <dd>

      <p class="para">
      </p>
     </dd>

    
   </dl>

  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.ibase-connect-returnvalues">
  <h3 class="title">返回值</h3>
  <p class="para">
   Returns an Firebird/InterBase link identifier on success, or <strong><code>false</code></strong> on error.
  </p>
 </div>


 <div class="refsect1 errors" id="refsect1-function.ibase-connect-errors">
  <h3 class="title">错误／异常</h3>
  <p class="para">
   If you get some error like &quot;arithmetic exception, numeric overflow, or
   string truncation. Cannot transliterate character between character sets&quot;
   (this occurs when you try use some character with accents) when using this
   and after <span class="function"><a href="function.ibase-query.html" class="function">ibase_query()</a></span> you must set the character set
   (i.e. ISO8859_1 or your current character set).
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-function.ibase-connect-examples">
  <h3 class="title">范例</h3>
  <p class="para">
   <div class="example" id="example-1226">
    <p><strong>示例 #1 <span class="function"><strong>ibase_connect()</strong></span> example</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br />$host&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'localhost:/path/to/your.gdb'</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">$dbh&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">ibase_connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$host</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$username</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$password</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'SELECT&nbsp;*&nbsp;FROM&nbsp;tblname'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$sth&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">ibase_query</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbh</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$stmt</span><span style="color: #007700">);<br />while&nbsp;(</span><span style="color: #0000BB">$row&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">ibase_fetch_object</span><span style="color: #007700">(</span><span style="color: #0000BB">$sth</span><span style="color: #007700">))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #0000BB">$row</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">email</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">ibase_free_result</span><span style="color: #007700">(</span><span style="color: #0000BB">$sth</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">ibase_close</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbh</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</code></div>
    </div>

   </div>
  </p>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.ibase-connect-seealso">
  <h3 class="title">参见</h3>
  <p class="para">
   <ul class="simplelist">
    <li class="member"><span class="function"><a href="function.ibase-pconnect.html" class="function" rel="rdfs-seeAlso">ibase_pconnect()</a> - Open a persistent connection to an InterBase database</span></li>
    <li class="member"><span class="function"><a href="function.ibase-close.html" class="function" rel="rdfs-seeAlso">ibase_close()</a> - Close a connection to an InterBase database</span></li>
   </ul>
  </p>
 </div>


</div></div></div></body></html>